The present invention relates generally to digital video encoding and more particularly to video encoding in which statistical multiplexing is used to combine a diversity of video formats into single multiplexed bit stream, e.g., for transmission on a single channel.
Many video encoding applications utilize statistical multiplexing techniques to combine several compressed video bit streams into a single multiplexed bit stream, e.g., for transmission on a single channel. The bit rate of a given compressed stream generally varies with time based on the complexity of the corresponding video signals. A statistical multiplexer attempts to estimate the complexity of the various video frame sequences of a video signal and allocates channel bits among the corresponding compressed video bit streams so as to provide an approximately constant level of video quality across all of the multiplexed streams. For example, a given video frame sequence with a relatively large amount of spatial activity or motion may be more complex than other sequences and therefore allocated more bits than the other sequences.
An example of a statistical multiplexing encoding system is described in M. Perkins and D. Amstein, Statistical Multiplexing of Multiple MPEG-2 Video Programs in a Single Channel, SMPTE J., vol. 104, no. 9, p. 596-599, September, 1995. As described in this reference, multiple encoders each receive a respective program, encode the program, and place their compressed picture data of a video signal of the program in a corresponding buffer of fixed size pending submission to a multiplexer. (As per MPEG-2 parlance, a xe2x80x9cprogramxe2x80x9d is a collection of one or more related signals. Herein, a program is presumed to include a video signal but may also include one or more associated audio signals, a close caption text signal, etc.) A multiplexer receives the encoded programs from the multiple encoders, in the form of a bit stream. A different bit rate may be assigned to each bit stream depending on a respective estimate of the number of bits needed by the video bit stream of the corresponding program to achieve the same level of quality as the other programs with which it is multiplexed. (Generally speaking, the bit rate of the video bit stream of a program is variable whereas the bit rates of the audio and other associated bit streams of a program are constant. This invention is illustrated in the context of adjusting only the bit rate of the video bit stream portion of a program.) On the receiving end of the communication, a decoder receives the multiplexed multiple program bit stream and discards the data it does not need (e.g., if the decoder is a set top box, Only the xe2x80x9ctunedxe2x80x9d or selected program is retained, whereas the data of each non-selected program is discarded). The retained data is inputted to the decoder""s input buffer of a fixed size pending decoding. The removal of data from the decoder buffer for decoding is controlled in a strict fashion to effect a constant end-to-end delay for any selected program. In the statistical multiplexing encoding scheme, the relative timing of each to-be-multiplexed program is independent. A first encoder for a first program may have many pictures of compressed data in its buffer pending submission to the mulitiplexer while a second encoder for a second bit stream may have only a few pictures in its buffer pending submission to the multiplexer. A decoder that selects the first program for decoding will be receiving xe2x80x9cearlierxe2x80x9d pictures than a decoder that selects the second program for decoding. Such a variable delay is eliminated by each decoder lengthening or shortening the amount of time the received pictures spend in the decoder buffer pending decoding to effect the above-noted constant end-to-end delay.
In a prior art patent application, entitled xe2x80x9cStatistical Multiplexed Video Encoding Using Pre-Encoding A Priori Statistics and A Priori and A Posteriori Statistics, Ser. No. 08/775,313, an exemplary statistical multiplexer 20 was disclosed in FIG. 3. FIG. 1 of this application shows the same prior art multiplexer, with the same designation numbers.
In the multiplexer 20, n video signals from Video Source 22 are applied to a Statistics Gatherer 24, and also to a Storage Device 28. Statistics Gatherer 24 gathers a priori statistics regarding the n video signals, and stores this set of statistics (27-1, 27-2, . . . 27-n) in a Storage Device 26.
A Statistics Computer 30 retrieves the a priori statistics 27-1, . . . 27-n from Storage Device 26. Concurrently, the n video signals (29-1, 29-2, . . . 29-n) are retrieved from Storage Device 28 and are applied to corresponding Encoders 32-1, 32-2, . . . 32-n. The n video signals are encoded into respective compressed video bit streams, based on the a priori information supplied to Encoders 1, 2, . . . n by Statistics Computer 30.
During the aforementioned encoding process, a posteriori information is generated from Encoders 1, 2, . . . n, and is inputted to Statistics Computer 30. Statistics Computer 30 then utilizes both the pre-stored a priori information and the received a posteriori information to generate an improved bit allocation distribution for the n video signals being encoded.
The resulting compressed bit streams are supplied from Encoders 1, 2, . . . n to inputs of a Multiplexer 34. Multiplexer 34 combines the multiple compressed bit streams into a single multiplexed bit stream outputted on channel output 35.
In a prior art U.S. Pat. No. 6,005,621, entitled xe2x80x9cMultiple Resolution Video Compression,xe2x80x9d a multiple resolution video compression system is disclosed where information used to encode the video signal at one resolution is used to facilitate the encoding process for a different resolution version.
In a prior art patent application, entitled xe2x80x9cVideo Transcoder with Bitstream Look Ahead for Rate Control and Statistical Multiplexing,xe2x80x9d Ser. No. 09/196,812, a system is disclosed for decoding and re-encoding a previously encoded video signal. The previously encoded video signal is temporarily stored in a look ahead buffer, where the encoded pictures are scanned to gather information. After a delay, the encoded pictures are then decoded and applied to a re-encoder. The re-encoder utilizes the scanned information, as well as the pictures that follow it, to optimize the encoding applied to each picture.
The aforementioned prior art patent applications utilize look ahead encoding, multiple resolutions, and re-encoding to provide various benefits for encoding and multiplexing. As the video technology state of the art trends toward high resolution (HD) video, however, there is a need to minimize the hardware and processing complexities associated with encoding and multiplexing HD signals.
Furthermore, when the signals from the video source contain a diversity of video formats, the encoding process can become very complex.
Therefore, it is an object of the present invention to provide simplified and economical system configurations for encoding and multiplexing video signals having a diversity of resolutions and formats.